Cloud computing offers scalability, providing resources on demand therefore eliminating the need for users to make long-term commitments to infrastructure. The on-demand nature of cloud resources requires cloud services to be constantly available in order to respond to increasing demand. While cloud services can scale-out in response to increased demand, scaling-in services in response to decreasing demand is more challenging. A minimal level of cloud services, even though idle, must be maintained or availability of the service is compromised. The current practice is to keep idle cloud services and infrastructure running in order to maintain availability. Idle services consume cloud resources, such as memory, processing power, and electrical power, without delivering value. There is therefore a need for cloud services to be managed efficiently to prevent idle services from wasting cloud resources.